/**
 * @author Linrui
 * @since 2011-03-05
 * 新闻资讯的数据持久化封装类的接口
 */
package com.qeado.news.dao;

import java.util.List;
import java.util.Map;
import com.qeado.news.model.News;
import com.qeado.util.PageHelper;

public interface NewsDao {
	/* 查询操作 */
	public List<News> listAll(); // 查询所有的新闻纪录

	public PageHelper listByPage(int pageNum); // 分页查询所有的新闻纪录，按发布时间排序

	public PageHelper listBySortByPage(int pageNum, String typeCode); // 分页按类别查询新闻纪录，按发布时间排序

	public News queryById(String id); // 按ID查询新闻纪录

//	public int queryCountBySort(String typeCode); // 查询某个类别的新闻记录数
	
	/* 按模块 查询该模块或1级大类 的排行榜 */
	public PageHelper listHotByType(int pageNum, int pageSize, String typeCode); 
	
	/* 用like 或者 = 查询某个类别，按要求排列，定义页码 */
	public PageHelper listByTypeEqual(int pageNum, int pageSize, String typeCode, String orderBy , String asc); // 分页查询查询某个类比的新闻（大类）用equal
	public PageHelper listByTypeLike(int pageNum, int pageSize, String typeCode, String orderBy , String asc); // 分页查询查询某个类比的新闻（大类）用like

	
	/* 按用户名分页查询已发布的信息 */
	public PageHelper listByUserName(int pageNum, String userName);
	public PageHelper listByUser(int pageNum,int pageSize,String userName ,String orderby, String asc); // 按用户

	/* 添加一条新闻纪录 */
	public boolean insertNews(News news);

	/* 点击量更新操作 */
	public void addHitCount(String id); // 增加某文章的 点击量
}
